import { FETCH_SUCCESS, FETCH_TODOS_REQUEST, FETCH_TODOS_FAILURE, ADD_TODO, DEL_TODO, SET_TEXT, PLUS_COUNT, TOGGLE_ITEM } from './actionType'
// 添加todolist的action
// 每个actions都有一个type属性
// actions 返回一个对象
var nextId = 1;
// 修改的count的actions 
export const EditCount = (num) => ({
  type: PLUS_COUNT,
  num: num
})

// 切换完成与未完成的
export const toggleItem = (id) => ({
  type: TOGGLE_ITEM,
  id: id
})

// 需要一个参数 text 添加任务文本
export const addTodo = (text) => {
  return ({
    type: ADD_TODO,
    id: nextId++, //添加需要的id
    text: text //添加需要的文本
  })
}




// 删除列表的actions
// id 需要一个删除id
export const delTodo = (id) => ({
  type: DEL_TODO,
  id: id //删除需要的id
})

// 设置输入框文本的actions 
export const setText = (text) => {
  console.log(text)
  return ({
    type: SET_TEXT,
    text: text //修改输入框的文本
  })
}


// 关于请求的actions 
export const fetchTodosRequest = () => ({
  type: FETCH_TODOS_REQUEST
})
// 请求数据的actions
// data 接受请求好的数据
export const fetchTodosSuccess = (data) => ({
  type: FETCH_SUCCESS,
  data
})
export const fetchTodosFailure = (error) => ({
  type: FETCH_TODOS_FAILURE,
  error
})